Method and system for presenting conversation thread

ABSTRACT

Disclosed are methods and systems for displaying a conversation thread. A conversation thread displaying method including classifying messages transmitted and received through at least one conversation session to generate a conversation thread for each of the at least one conversation session, providing a conversation session list, displaying messages of a selected conversation thread selected from the conversation session list, receiving a conversation summary request for the messages of the selected conversation thread, and providing a conversation summary for the messages of the selected conversation thread in response to the conversation summary request for the messages of the selected conversation thread may be provided.

CROSS-REFERENCE TO RELATED APPLICATIONS

This U.S. non-provisional application claims the benefit of priorityunder 35 U.S.C. § 119 to Korean Patent Application No. 10-2019-0034392,filed Mar. 26, 2019, the entire contents of which are incorporatedherein by reference in their entirety.

BACKGROUND Technical Field

One or more example embodiments relate to methods, systems, apparatuses,and/or non-transitory computer readable media for displaying aconversation thread.

Related Art

Instant messages may be associated with a single conversation thread.For example, a plurality of conversations (e.g., messages) transmittedand received through a chatroom of a mobile messenger may form a singleconversation thread corresponding to the chatroom. A user may receive alist of chatrooms of the user and may transmit and receive instantmessages in association with a chatroom selected from the list. Ingeneral, only a last conversation of a conversation thread correspondingto a corresponding chatroom is displayed on each chatroom in a list ofchatrooms provided to the user. In this case, the user may not readilyverify a current conversation or previous conversations in a currentchatroom. Further, even though the user joins a specific chatroom, theuser may not readily verify a main conversation among other usersjoining the specific chatroom or a current topic of conversation in thecorresponding chatroom.

SUMMARY

Some example embodiments provide conversation thread displaying methodsfor providing an interface of summarizing and displaying conversationsof a conversation thread corresponding to a specific chatroom orconversations of a conversation thread corresponding to a specific user,computer apparatuses for performing the conversation thread displayingmethods, and/or a non-transitory computer-readable record media forimplementing the conversation thread displaying method on the computerapparatus in conjunction with the computer apparatus.

According to an example embodiment, a conversation thread displayingmethod of a computer apparatus includes classifying messages transmittedand received through at least one conversation session to generate aconversation thread for each conversation session, providing aconversation session list, the conversation session list including oneor more conversation threads associated with the at least oneconversation session, displaying messages of a selected conversationthread selected from the conversation session list, receiving aconversation summary request for the messages of the selectedconversation thread, and providing a conversation summary for themessages of the selected conversation thread in response to theconversation summary request for the messages of the selectedconversation thread.

According to an aspect of an example embodiment, a non-transitorycomputer-readable record medium storing instructions that, when executedby a processor, cause the processor to perform the aforementionedconversation thread displaying method.

According to an example embodiment, a computer apparatus includes atleast one processor configured to execute a computer-readableinstruction. The at least one processor is configured to classifymessages transmitted and received through at least one conversationsession to generate a conversation thread for each conversation session,provide a conversation session list, the conversation session listincluding one or more conversation threads associated with the at leastone conversation session, display messages of a selected conversationthread selected from the conversation session list, receive aconversation summary request for the messages of the selectedconversation thread, and provide a conversation summary for the messagesof the selected conversation thread in response to the conversationsummary request for the messages of the selected conversation thread.

According to some example embodiments, it is possible to provide aninterface of summarizing and displaying conversations of a conversationthread corresponding to a specific chatroom or conversations of aconversation thread corresponding to a specific user.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a diagram illustrating an example of a network environmentaccording to at least one example embodiment;

FIG. 2 is a diagram illustrating an example of a computer apparatusaccording to at least one example embodiment;

FIG. 3 is a flowchart illustrating an example of a conversation threaddisplaying method according to at least one example embodiment;

FIG. 4 is a flowchart illustrating another example of a conversationthread displaying method according to at least one example embodiment;

FIG. 5 is a flowchart illustrating still another example of aconversation thread displaying method according to at least one exampleembodiment;

FIG. 6 is a flowchart illustrating an example of a method of generatinga conversation summary according to at least one example embodiment;

FIG. 7 illustrates an example of providing a conversation summary inresponse to a pinch-to-zoom-in gesture on a chatroom screen according toat least one example embodiment;

FIG. 8 illustrates an example of providing a conversation summaryaccording to at least one example embodiment;

FIG. 9 illustrates an example of providing a conversation summary inresponse to a pinch-to-zoom-in gesture on a chatroom list according toat least one example embodiment;

FIG. 10 illustrates an example of providing a conversation summary inresponse to a pinch-to-zoom-in gesture on a contact list according to atleast one example embodiment;

FIG. 11 illustrates another example of providing a conversation summaryin response to a pinch-to-zoom-in gesture on a chatroom screen accordingto at least one example embodiment; and

FIG. 12 illustrates still another example of providing a conversationsummary in response to a pinch-to-zoom-in gesture on a chatroom screenaccording to at least one example embodiment.

DETAILED DESCRIPTION

One or more example embodiments will be described in detail withreference to the accompanying drawings. Example embodiments, however,may be embodied in various different forms, and should not be construedas being limited to only the illustrated example embodiments. Rather,the illustrated example embodiments are provided as examples so thatthis disclosure will be thorough and complete, and will fully convey theconcepts of this disclosure to those skilled in the art. Accordingly,known processes, elements, and techniques, may not be described withrespect to some example embodiments. Unless otherwise noted, likereference characters denote like elements throughout the attacheddrawings and written description, and thus descriptions will not berepeated.

As used herein, the singular forms “a,” “an,” and “the,” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising,” when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups, thereof. As used herein, the term “and/or”includes any and all combinations of one or more of the associatedlisted products. Expressions such as “at least one of,” when preceding alist of elements, modify the entire list of elements and do not modifythe individual elements of the list. Also, the term “exemplary” isintended to refer to an example or illustration.

Unless otherwise defined, all terms (including technical and scientificterms) used herein have the same meaning as commonly understood by oneof ordinary skill in the art to which example embodiments belong. Terms,such as those defined in commonly used dictionaries, should beinterpreted as having a meaning that is consistent with their meaning inthe context of the relevant art and/or this disclosure, and should notbe interpreted in an idealized or overly formal sense unless expresslyso defined herein.

Software may include a computer program, program code, instructions, orsome combination thereof, for independently or collectively instructingor configuring a hardware device to operate as desired. The computerprogram and/or program code may include program or computer-readableinstructions, software components, software modules, data files, datastructures, and/or the like, capable of being implemented by one or morehardware devices, such as one or more of the hardware devices mentionedabove. Examples of program code include both machine code produced by acompiler and higher level program code that is executed using aninterpreter.

A hardware device, such as a computer processing device, may run anoperating system (OS) and one or more software applications that run onthe OS. The computer processing device also may access, store,manipulate, process, and create data in response to execution of thesoftware. For simplicity, one or more example embodiments may beexemplified as one computer processing device; however, one skilled inthe art will appreciate that a hardware device may include multipleprocessing elements and multiple types of processing elements. Forexample, a hardware device may include multiple processors or aprocessor and a controller. In addition, other processing configurationsare possible, such as parallel processors.

It will be understood that the term “and/or” includes any and allcombinations of one or more of the associated listed items. Expressionssuch as “at least one of,” when preceding a list of elements, modify theentire list of elements and do not modify the individual elements of thelist. Thus, for example, both “at least one of A, B, or C” and “A, B,and/or C” means either A, B, C or any combination thereof.

Although described with reference to specific examples and drawings,modifications, additions and substitutions of the disclosed exampleembodiments may be variously made according to the description by thoseof ordinary skill in the art. For example, the described techniques maybe performed in an order different with that of the methods described,and/or components such as the described system, architecture, devices,circuit, and the like, may be connected or combined to be different fromthe above-described methods, or results may be appropriately achieved byother components or equivalents.

Hereinafter, some example embodiments will be described with referenceto the accompanying drawings.

A conversation thread displaying system according to example embodimentsmay be configured through at least one computer apparatus. Here, acomputer program according to an example embodiment may be installed andexecuted on the computer apparatus and the computer apparatus mayperform a conversation thread displaying method according to exampleembodiments under control of the executed computer program. Theaforementioned computer program may be stored on a non-transitorycomputer-readable record medium to implement the conversation threaddisplaying method on a computer in conjunction with the computerapparatus.

FIG. 1 illustrates an example of a network environment according to atleast one example embodiment. Referring to FIG. 1, the networkenvironment may include a plurality of electronic devices 110, 120, 130,and 140, a plurality of servers 150 and 160, and a network 170. FIG. 1is provided as an example only. A number of electronic devices or anumber of servers is not limited thereto. Also, the network environmentof FIG. 1 is provided as an example environment applicable to exampleembodiments, and environments applicable to example embodiments is notlimited to the network environment of FIG. 1.

Each of the plurality of electronic devices 110, 120, 130, and 140 maybe a fixed terminal or a mobile terminal that is configured as acomputer apparatus. For example, the plurality of electronic devices110, 120, 130, and 140 may be a smartphone, a mobile phone, a navigationdevice, a computer, a laptop computer, a digital broadcasting terminal,a personal digital assistant (PDA), a portable multimedia player (PMP),a tablet PC, or the like. For example, although FIG. 1 illustrates ashape of a smartphone as an example of the electronic device 110, theelectronic device 110 used herein may refer to one of various types ofphysical computer apparatuses capable of communicating with otherelectronic devices 120, 130, and 140, and/or the servers 150 and 160over the network 170 in a wireless or wired communication manner.

The communication scheme is not limited, and may include a near fieldwireless communication scheme between devices as well as a communicationscheme using a communication network (e.g., a mobile communicationnetwork, wired Internet, wireless Internet, a broadcasting network,etc.) includable in the network 170. For example, the network 170 mayinclude at least one of network topologies that include a personal areanetwork (PAN), a local area network (LAN), a campus area network (CAN),a metropolitan area network (MAN), a wide area network (WAN), abroadband network (BBN), and Internet. Also, the network 170 may includeat least one of network topologies that include a bus network, a starnetwork, a ring network, a mesh network, a star-bus network, or a treeor hierarchical network. However, they are provided as examples only.

Each of the servers 150 and 160 may be configured as a computerapparatus or a plurality of computer apparatuses that provides aninstruction, a code, a file, content, a service, etc., throughcommunication with the plurality of electronic devices 110, 120, 130,and 140 over the network 170. For example, the server 150 may be asystem that provides a service to the plurality of electronic devices110, 120, 130, and 140 connected over the network 170. For example, theservice may be a messaging service, a mail service, a social networkservice (SNS), a map service, a translation service, a financialservice, a payment service, a search service, a content providingservice, and the like.

FIG. 2 is a block diagram illustrating an example of a computerapparatus according to at least one example embodiment. Each of theelectronic devices 110, 120, 130, and 140 or each of the servers 150 and160 may be implemented by a computer apparatus 200 of FIG. 2.

Referring to FIG. 2, the computer apparatus 200 may include a memory210, a processor 220, a communication interface 230, and an input/output(I/O) interface 240. The memory 210 may include a permanent mass storagedevice (e.g., random access memory (RAM), a read only memory (ROM), or adisk drive) as a non-transitory computer-readable record medium. Thepermanent mass storage device (e.g., ROM or disk drive) may be includedin the computer apparatus 200 as a permanent storage device separatefrom the memory 210. Also, an OS or at least one program code may bestored in the memory 210. Such software components may be loaded to thememory 210 from another non-transitory computer-readable record mediumseparate from the memory 210. The other non-transitory computer-readablerecord medium may include a non-transitory computer-readable recordmedium, for example, a floppy drive, a disk, a tape, a DVD/CD-ROM drive,a memory card, etc. According to other example embodiments, softwarecomponents may be loaded to the memory 210 through the communicationinterface 230, instead of the non-transitory computer-readable recordmedium. For example, the software components may be loaded to the memory210 of the computer apparatus 200 based on a computer program installedby files provided over the network 170.

The processor 220 may be configured to process instructions of acomputer program by performing basic arithmetic operations, logicoperations, and I/O operations. The computer-readable instructions maybe provided from the memory 210 or the communication interface 230 tothe processor 220. For example, the processor 220 may be configured toexecute received instructions in response to the program code stored inthe storage device, such as the memory 210.

The communication interface 230 may provide a function for communicationbetween the computer apparatus 200 and another apparatus (e.g., betweena storage device of the computer apparatus 200 and a storage device ofanother apparatus) over the network 170. For example, the processor 220of the computer apparatus 200 may transfer a request created based on aprogram code stored in the storage device such as the memory 210, aninstruction data, a file, etc., to other apparatuses over the network170 under control of the communication interface 230. Conversely, thecomputer apparatus 200 may receive a signal, an instruction, data, afile, etc., from another apparatus through the communication interface230 of the computer apparatus 200 by going through the network 170. Forexample, a signal, an instruction, and data received through thecommunication interface 230 may be transferred to the processor 220 orthe memory 210, and a file may be stored in a storage medium (e.g., thepermanent storage device) further includable in the computer apparatus200.

The I/O interface 240 may be circuitry configured to interface with anI/O apparatus 250. For example, an input device may include amicrophone, a keyboard, or a mouse, and an output device may include adisplay or a speaker. As another example, the I/O interface 240 may be adevice (e.g., touchscreen) in which an input function and an outputfunction are integrated into a single function. The I/O apparatus 250may be configured as a single device with the computer apparatus 200.

According to other example embodiments, the computer apparatus 200 mayinclude a smaller or greater number of components than a number ofcomponents shown in FIG. 2. However, there is no need to clearlyillustrate many components according to the related art. For example,the computer apparatus 200 may include another I/O apparatus 250, or mayfurther include other components (e.g., a transceiver or a database(DB)).

FIG. 3 is a flowchart illustrating an example of a conversation threaddisplaying method according to at least one example embodiment. Theconversation thread displaying method of FIG. 3 may be performed by, forexample, the aforementioned computer apparatus 200. For example, theprocessor 220 of the computer apparatus 200 may be configured to executea control instruction according to a code of at least one program or acode of an OS included in the memory 210. Here, the processor 220 maycontrol the computer apparatus 200 to perform operations 310 to 350included in the conversation thread displaying method of FIG. 3 inresponse to a control instruction provided from a code stored on thecomputer apparatus 200.

Referring to FIG. 3, in operation 310, the computer apparatus 200 mayclassify messages transmitted and received through at least oneconversation session and may generate a conversation thread for eachconversation session. For example, in a mobile messenger environment,messages transmitted and received through a single chatroom may begenerated into a single conversation thread. In this case, aconversation thread for each conversation session may correspond tomessages for each chatroom.

In operation 320, the computer apparatus 200 may provide a conversationsession list, which includes one or more conversation threads associatedwith the at least one conversation session. For example, in the mobilemessenger environment, a chatroom list may be displayed on a displayincluded in the computer apparatus 200.

In operation 330, the computer apparatus 200 may display a conversationthread (e.g., messages included in the conversation thread) for achatroom selected from the conversation session list. For example, inresponse to a selection from a user of a single chatroom from thechatroom list in the mobile messenger environment, messages transmittedand received through the selected chatroom may be displayed on thedisplay included in the computer apparatus 200. Here, only a portion ofthe messages included in the conversation thread may be displayed on thedisplay, and remaining messages may be selectively displayed on thedisplay in response to a user input.

In operation 340, the computer apparatus 200 may receive a conversationsummary request for the selected conversation thread. For example, in atouchscreen environment, the conversation summary request may be inputusing a touch gesture of the user. For example, the conversation summaryrequest for the conversation thread may be input using a multi-touch anddrag (e.g., a pinch-to-zoom-in gesture or a pinch-to-zoom-out gesture)on a touchscreen on which the messages are displayed. Depending on someexample embodiments, the conversation summary request may be inputthrough a user interface provided in a button form on a screen. Theconversation summary request may be input using various methods known toinput a user instruction.

In operation 350, the computer apparatus 200 may provide a conversationsummary for a portion of the messages included in the selectedconversation thread in response to the conversation summary request forthe selected conversation thread. For example, the computer apparatus200 may display the conversation summary by switching a screen on whicha portion of the messages included in the selected conversation threadare displayed to a screen on which the conversation summary isdisplayed. Here, the conversation summary may be generated usingmessages classified based on at least one item among a conversationthread, a period, a contact (e.g., an account, a telephone number, or auser), or a subject. In some example embodiments, at least oneconversation summary generated for each period may be provided byclassifying the messages of the selected conversation thread for eachperiod based on a time at which a corresponding message is transmittedor a time at which a corresponding message is received. For example, aconversation summary for messages transmitted and received during acorresponding period may be generated for a specific period (e.g., day,week, month, or year). For example, a single conversation summary may begenerated for messages of a daily basis, and the generated conversationsummaries may be provided. The following example 1 represents an exampleof a conversation summary for messages of a daily basis, and thefollowing example 2 represents an example of a conversation summarygenerated for messages of a monthly basis.

Example 1) Christmas eve (December 24)↔merry Christmas (December 25)↔What did you do yesterday? (December 26)

Example 2) It's cold (November)↔Christmas (December)↔new year (January).

As another example, a conversation summary for each subject may begenerated using messages of the same subject. As another example, aconversation summary for each contact may be generated using messagesclassified for each contact with whom a corresponding message istransmitted or received. Here, generating a conversation summary usingmessages classified based on a conversation thread may correspond togenerating a conversation summary for the entire messages of thecorresponding conversation thread.

As another example, a conversation summary may be generated using adesired (or, alternatively, predetermined) number of messages includedin a corresponding conversation thread. For example, a conversationsummary may be generated for every ten messages.

Meanwhile, a conversation summary may be generated using messagesclassified for two or more items. For example, a conversation summarymay be generated for each contact and each period by generating theconversation summary for each contact and, here, also classifyingmessages transmitted and received to and from a corresponding contactfor each period. As another example, a conversation summary may begenerated for each group by classifying, into a group, each desired (or,alternatively, predetermined number) of currently received messagesamong messages included in a conversation thread, and, here, classifyinga message transmitted or received within a desired (or alternatively,predetermined) time interval into the same group. For example, every tenmessages among messages included in a conversation thread may beclassified into a group. Here, if a twelfth message is received within 1minute since a tenth message is received, an eleventh message and thetwelfth message may be classified into a first group with the tenthmessage.

Further, the computer apparatus 200 may change an item in response to arequest from the user. For example, the computer apparatus 200 mayreceive a period change request for displaying a conversation summary.In response to the period change request, the computer apparatus 200 maychange a period for displaying the conversation summary from a firstperiod (e.g., a daily basis period) to a second period (e.g., a weeklybasis period), and may provide a conversation summary generated for thesecond period. In some example embodiments, a conversation summary foreach period may be changed to a conversation summary for each subject orto a conversation summary for each contact in response to a request fromthe user.

The conversation summary may include, for example, information about atleast one of a number of messages used for the conversation summary, aperiod during which the messages used for the conversation summary aretransmitted or received, a contact having transmitted or received themessages used for the conversation summary, and a number of contentsincluded in the messages used for the conversation summary for each typeof content. Here, a type of content may include, for example, anemoticon, an image, a sticker, or a video. Contents may be summarizedseparate from a text to provide statistical information, or a text maybe extracted from each content and applied to a conversation summary.

FIG. 4 is a flowchart illustrating another example of a conversationthread displaying method according to at least one example embodiment.Here, operations 410 and 420 may be performed after operations 310 and320 of FIG. 3.

Referring to FIG. 4, in operation 410, the computer apparatus 200 mayreceive a conversation summary request for a conversation session listin a state in which the conversation session list is displayed. Forexample, in a touchscreen environment, the conversation summary requestmay be input through a touch gesture of the user. For example, theconversation summary request may be input through a multi-touch and drag(e.g., a pinch-to-zoom-in gesture or a pinch-to-zoom-out gesture) on atouchscreen on which the conversation session list is displayed.Depending on some example embodiments, the conversation summary requestmay be input through a user interface provided in a button form on ascreen. The conversation summary request may be input using variousmethods known to receive a user instruction.

In operation 420, the computer apparatus 200 may provide a conversationsummary for each conversation session with respect to (or included in)the conversation session list in response to the conversation summaryrequest for the conversation session list. For example, the computerapparatus 200 may display a conversation summary for each conversationthread by switching a screen on which the conversation session list isdisplayed to a screen on which the conversation summary for eachconversation session is displayed. Even in this case, the conversationsummary may be generated using messages classified based on at least oneitem among a conversation thread, a period, a contact (e.g., an account,a telephone number, or a user), or a subject. For example, the computerapparatus 200 may provide a conversation summary generated usingmessages included in a conversation thread associated with acorresponding conversation session. Meanwhile, as described above, anitem may be changed in response to a request from the user and aconversation summary of another item may be provided to the user. Forexample, the computer apparatus 200 may classify messages included inthe same conversation thread associated with the corresponding sessionfor each period, and may provide a conversation summary for a firstperiod among conversation summaries generated for the respective periodsusing messages classified for the respective periods using theclassified messages. Here, in response to a conversation summary changerequest for the conversation session, the computer apparatus 200 mayprovide a conversation session by changing the conversation summary forthe first period to a conversation summary for a second period. Here, anitem of a period may be changed to a contact or a subject. For example,a conversation summary for each period may be changed to a conversationsummary for each contact or a conversation summary for each subject, andmay be displayed in association with a single conversation thread.

FIG. 5 is a flowchart illustrating still another example of aconversation thread displaying method according to at least one exampleembodiment. Here, operations 510 to 530 of FIG. 5 may be performed afteroperation 310 of FIG. 3.

Referring to FIG. 5, in operation 510, the computer apparatus 200 mayprovide a contact list. The contact list may correspond to, for example,a friend list of a mobile messenger.

In operation 520, the computer apparatus 200 may receive a conversationsummary request for a contact in a state in which the contact list isdisplayed. For example, in a touchscreen environment, the conversationsummary request may be input through a touch gesture of the user. Forexample, the conversation summary request may be input through amulti-touch and drag (e.g., a pinch-to-zoom-in gesture or apinch-to-zoom-out gesture) on a touchscreen on which a conversationthread list is displayed. Depending on some example embodiments, theconversation summary request may be input through a user interfaceprovided in a button form on a screen. The conversation summary requestmay be input using various methods known to input a user instruction.

In operation 530, the computer apparatus 200 may provide a conversationsummary for each contact to each contact included in the contact list inresponse to a conversation summary request for the contact. For example,the computer apparatus 200 may display a conversation summary for eachcontact by switching a screen on which the contact list is displayed toa screen on which the conversation summary for each contact isdisplayed. Depending on some example embodiments, the conversationsummary may be generated using messages classified based on at least oneitem among a conversation thread, a period, a contact (e.g., an account,a telephone number, or a user), a number of messages, or a subject. Forexample, the computer apparatus 200 may provide a conversation summarygenerated using messages including at least one of a message receivedfrom a contact or a message transmitted to the same contact. Meanwhile,as described above, an item may be changed in response to a request fromthe user and a conversation summary of another item may be provided tothe user. For example, the computer apparatus 200 may classify one ormore messages for each period and in association with the respectivecontacts, and may provide a conversation summary for a first period fromamong conversation summaries generated for respective periods using theclassified one or more messages. Here, the computer apparatus 200 maychange the conversation summary for the first period to a conversationsummary for a second period, and provide the conversation summary forthe second period in response to a conversation summary change requestfor the contact. For example, a conversation summary for each period maybe changed to a conversation summary for each subject or a conversationsummary for each conversation thread, and may be displayed inassociation with a single contact.

FIG. 6 is a flowchart illustrating an example of a method of generatinga conversation summary according to at least one example embodiment.Here, operations 610 to 630 of FIG. 6 may be performed after operation310 of FIG. 3.

Referring to FIG. 6, in operation 610, the computer apparatus 200 mayclassify the transmitted and received messages into at least one groupbased on at least one item among a conversation thread, a period, acontact, or a subject. For example, every time the user receives ortransmits a message, a conversation analyzer may run on the computerapparatus 200 as a background operation. As another example, theconversation analyzer may run on the computer apparatus 200 based on aspecific point in time or a specific period set or preset by the user ora system. Here, the conversation analyzer may be a representation of afunction performed by the processor 220 of the computer apparatus 200under control of an application installed on the computer apparatus 200.The conversation analyzer may classify the transmitted and receivedmessages based on at least one item among a conversation thread, aperiod, a contact, or a subject. In some example embodiments, aconversation thread may be classified by grouping messages included inthe conversation thread based on a desired (or, alternatively,predetermined) number. For example, currently received messages amongthe messages included in a conversation thread may be grouped based on adesired (or, alternatively, predetermined) number of messages, forexample, ten messages. Each piece of message group information may bestored in a database of the computer apparatus 200.

In operation 620, the computer apparatus 200 may set a weight for eachitem to each of the classified messages. For example, the computerapparatus 200 may set at least one of a daily basis weight, a weeklybasis weight, a monthly basis weight, a yearly basis weight, a weightfor each contact, a weight for each conversation thread, or a weight foreach subject. For example, the computer apparatus 200 may set a weightto each of the messages classified for a specific item based on acorrelation between the messages classified with respect to the specificitem and a number of messages classified with respect to the specificitem. For example, a weight of a new message in the specific item maydiffer based on a number of messages classified into the correspondingitem. In some example embodiments, a relatively high weight may be setto a new message having a correlation with an existing message to whicha relatively high weight is set in the corresponding item. Weights forthe respective items set to the existing messages may be stored in thedatabase for the respective items. The database may be updated atdesired (or, alternatively, predetermined) periods and/or in response toan operation of the conversation analyzer.

According to some example embodiments, the messages classified inoperation 610 may be reclassified based on the set weight in operation620. For example, when messages (which includes a tenth message as thelast message) included in a conversation thread are classified into agroup based on a desired (or, alternatively, predetermined) number inoperation 610, a following message (e.g., an eleventh message) may beclassified into a group different from that of a previous message (e.g.,a tenth message). In this case, the following message (e.g., theeleventh message) may be reclassified into the same group as that of theprevious message (e.g., the tenth message) in operation 620, if arelatively high weight is set to the following message based on acorrelation with the previous message.

In operation 630, the computer apparatus 200 may generate a conversationsummary of messages classified with respect to a desired item based on aweight of the desired item. For example, it may be assumed that aconversation summary for each period (e.g., based on a daily basis) isprovided with respect to messages included in a specific conversationthread. Here, n messages having a largest daily basis weight amongmessages classified based on a daily basis may be used to generate aconversation summary. As another example, in the case of generating aconversation summary for each conversation thread, n messages having alargest weight for each conversation thread may be selected from amongmessages classified into a conversation thread A, and may be used togenerate a conversation summary for the conversation thread A.

FIG. 7 illustrates an example of providing a conversation summary inresponse to a pinch-to-zoom-in gesture on a chatroom screen according toat least one example embodiment. Referring to FIG. 7, a portion ofmessages included in a specific conversation thread are displayed on afirst screen 710 of the computer apparatus 200. A user may controlmessages to be displayed on a screen through a user gesture (e.g., anupward/downward swipe). Here, FIG. 7 illustrates an example of, inresponse to the computer apparatus 200 recognizing a pinch-to-zoom-ingesture on the first screen 710, providing a conversation summary byswitching the first screen 710 to a second screen 720. Here, the secondscreen 720 represents an example of generating and providing aconversation summary based on a daily basis. In response to recognizinga pinch-to-zoom-in gesture of the user on the second screen 720, thecomputer apparatus 200 may change a daily conversation summary to aweekly conversation summary. The weekly conversation summary may bechanged to a monthly conversation summary in response to an additionalpinch-to-zoom-in gesture, and the monthly conversation summary may bechanged to a yearly conversation summary in response to an additionalpinch-to-zoom-in gesture. Further, in response to a selection from theuser on one of daily conversation summaries displayed on the secondscreen 720 (e.g., in response to a touch of the user on one of dailyconversation summaries in a touchscreen environment with a screen), ascreen for displaying messages may be provided. Here, at least a portionof messages corresponding to the selected daily conversation summary maybe displayed on a screen. If all of the messages associated with theselected daily conversation summary are not displayed on a singlescreen, a position corresponding to at least one message (e.g., a firstmessage) among the messages associated with the selected dailyconversation summary may be selected.

Although not illustrated, in response to recognizing a pinch-to-zoom-outgesture of the user on the second screen 720, the computer apparatus 200may switch the second screen 720 to the first screen 710. Further, theyearly conversation summary may be changed to the monthly conversationsummary in response to an additional pinch-to-zoom-out gesture, themonthly conversation summary may be changed to the weekly conversationsummary in response to an additional pinch-to-zoom-out gesture, and theweekly conversation summary may be changed to the daily conversationsummary in response to the additional pinch-to-zoom-out gesture.

FIG. 8 illustrates an example of providing a conversation summaryaccording to at least one example embodiment. Referring to FIG. 8, afirst box 810 indicated with a dotted line represents an example of theconversation summary of FIG. 7. A second box 820 indicated with a dottedline represents an example of providing statistical information asanother example of the conversation summary. Here, the conversationsummary included in the second box 820 includes a number of messages, anumber of contents for each type, and main keywords. Here, the mainkeywords may allow the user to further easily verify summarized contentsof corresponding messages by differentiating a font size, a boldness,and/or a color, based on a number of times a corresponding main keywordappears in the messages or a weight set to each of the messagescorresponding the main keyword.

Although not illustrated, in response to a selection from the user onstatistical information, a message associated with the statisticalinformation may be displayed. For example, in response to a selectionfrom the user on “#Monday” included in the second box 820, messagesassociated with the main keyword “Monday” may be collected and displayedor may be highlighted to be distinguished from other messages irrelevantto the main keyword “Monday.” In the case of a conversation summary ofmessages classified into a conversation thread A, a message used for theconversation summary may be displayed to be distinguished from a messageunused for the conversation summary among the messages included in theconversation thread A, by highlighting only the message used to generatethe corresponding conversation summary. In some example embodiments,only the message used to generate the corresponding conversation summarymay be displayed.

FIG. 9 illustrates an example of providing a conversation summary inresponse to a pinch-to-zoom-in gesture on a chatroom list according toat least one example embodiment. Referring to FIG. 9, a portion of achatroom list corresponding to each conversation thread is displayed ona third screen 910 of the computer apparatus 200. A user may controlchatrooms to be displayed on a screen through a user gesture (e.g., anupward/downward swipe). Here, FIG. 9 illustrates an example of, inresponse to the computer apparatus 200 recognizing a pinch-to-zoom-ingesture on the third screen 910, providing a conversation summary foreach chatroom (for each conversation thread) by switching the thirdscreen 910 to a fourth screen 920. Here, the fourth screen 920represents an example in which a conversation summary for each chatroomis a daily conversation summary. In response to recognizing apinch-to-zoom-in gesture of the user on the fourth screen 920, thecomputer apparatus 200 may change the daily conversation summary to aweekly conversation summary. The weekly conversation summary may bechanged to a monthly conversation summary in response to an additionalpinch-to-zoom-in gesture, and the monthly conversation summary may bechanged to a yearly conversation summary in response to an additionalpinch-to-zoom-in gesture.

In response to recognizing a pinch-to-zoom-out gesture on the fourthscreen 920, the computer apparatus 200 may display again the thirdscreen 910 for the user. In some example embodiments, a conversationsummary may be changed based on a set period in response to aleftward/rightward swipe 930 on each of chatrooms displayed on thefourth screen 920. For example, a conversation summary may be generatedon a daily basis and thereby on the fourth screen 920, and aconversation summary of November 28 may be displayed through a chatroomwith a user 5 on the fourth screen 920. Here, in response to arecognizing a leftward swipe on the chatroom with the user 5, thecomputer apparatus 200 may display a conversation summary of November 27instead of displaying the existing conversation summary of November 28.Thereafter, in response to recognizing a rightward swipe on the chatroomwith the user 5, the computer apparatus 200 may display again (e.g.,display back) the previous conversation summary of November 28, insteadof displaying the conversation summary of November 27.

As another example, although not illustrated, in response to recognizinga pinch-to-zoom-in gesture on the third screen 910, the computerapparatus 200 may generate a conversation summary of a corresponding daywith respect to each chatroom. For example, when messages aretransmitted and received between a user 1 and a user 2 on December 3 andno message is transmitted or received among a user 3, a user 4, and theuser 5 on December 3, and a pinch-to-zoom-in gesture is recognized onDecember 3, a conversation summary of December 3 may be generated withrespect to the user 1 and the user 2 and displayed on the computerapparatus 200, and may not be displayed with respect to the user 3, theuser 4, and the user 5. In response to recognizing a leftward swipe on achatroom list in a state in which the conversation summary of December 3is displayed with respect to the user 1 and the user 2, the computerapparatus 200 may display a conversation summary of December 2.Thereafter, in response to recognizing a rightward swipe on the chatroomlist in a state in which the conversation summary of December 2 isdisplayed, the computer apparatus 200 may display back (e.g., displayagain) the conversation summary of December 3.

FIG. 10 illustrates an example of providing a conversation summary inresponse to a pinch-to-zoom-in gesture on a contact list according to atleast one example embodiment. Referring to FIG. 10, a portion of acontact list is displayed on a fifth screen 1010 of the computerapparatus 200. A user may control contacts to be displayed through auser gesture, for example, an upward/downward swipe. Here, FIG. 10illustrates an example of, in response to the computer apparatus 200recognizing a pinch-to-zoom-in gesture on the fifth screen 1010,providing a conversation summary for each contact by switching the fifthscreen 1010 to a sixth screen 1020. Here, the sixth screen 1020represents an example in which a conversation summary for each contactis a daily conversation summary. In response to recognizing apinch-to-zoom-in gesture of the user on the sixth screen 1020, thecomputer apparatus 200 may change the daily conversation summary to aweekly conversation summary. The weekly conversation summary may bechanged to a monthly conversation summary in response to an additionalpinch-to-zoom-in gesture, and the monthly conversation summary may bechanged to a yearly conversation summary in response to an additionalpinch-to-zoom-in gesture.

In response to recognizing a pinch-to-zoom-out gesture on the sixthscreen 1020, the computer apparatus 200 may display again the fifthscreen 1010 for the user. In response to a leftward/rightward swipe 1030of the user on each of contacts displayed on the sixth screen 1020, aconversation summary may be changed based on a set period basis. Forexample, a conversation summary is generated on a daily basis andthereby displayed on the sixth screen 1020, and a conversation summaryof December 3 is displayed on the sixth screen 1020 with respect to acontact for a user 1. Here, in response to recognizing a leftward swipeon the contact for the user 1, the computer apparatus 200 may display aconversation summary of December 2 instead of displaying the existingconversation summary of December 3. Thereafter, in response torecognizing a rightward swipe on the contact for the user 1, thecomputer apparatus 200 may display again (e.g., display back) theconversation summary of December 3 instead of displaying theconversation summary of December 2.

As another example, although not illustrated, in response to recognizinga pinch-to-zoom-in gesture on the third screen 1010, the computerapparatus 200 may generate a conversation summary of a corresponding dayfor each contact. For example, when messages are transmitted andreceived among the user 1, a user 2, and a user 4 on December 3 and nomessage is transmitted and received between a user 3 and a user 5 onDecember 3, and, here, a pinch-to-zoom-in gesture on December 3 isrecognized, a conversation summary of December 3 may be generated withrespect to the user 1, the user 2, and the user 4, and displayed on thecomputer apparatus 200, and may not be displayed with respect to theuser 3 and the user 5. In response to recognizing a leftward swipe on achatroom list in a state in which the conversation summary of December 3is displayed with respect to the user 1, the user 2, and the user 4, thecomputer apparatus 200 may display the conversation summary of December2 with respect to the user 1 to the user 4. Thereafter, in response torecognizing a rightward swipe on the chatroom list in a state in whichthe conversation summary of December 2 is displayed, the computerapparatus 200 may display again (e.g., display back) the conversationsummary of December 3 with respect to the user 1, the user 2, and theuser 4.

FIG. 11 illustrates another example of providing a conversation summaryin response to a pinch-to-zoom-in gesture on a chatroom screen accordingto at least one example embodiment. Referring to FIG. 11, a portion ofmessages included in a specific conversation thread are displayed on aseventh screen 1110 of the computer apparatus 200. A user may controlmessages to be displayed on a screen through a user gesture, forexample, an upward/downward swipe. Here, FIG. 11 illustrates an exampleof, in response to the computer apparatus 200 recognizing apinch-to-zoom-in gesture on the seventh screen 1110, providing aconversation summary by switching the seventh screen 1110 to an eighthscreen 1120. Here, the eighth screen 1120 represents an example ofgenerating a conversation summary on a daily basis and displaying thesame in a grid form. In response to recognizing a pinch-to-zoom-ingesture of the user on the eighth screen 1120, the computer apparatus200 may change a daily conversation summary to a weekly conversationsummary. The weekly conversation summary may be changed to a monthlyconversation summary in response to an additional pinch-to-zoom-ingesture, and the monthly conversation summary may be changed to a yearlyconversation summary in response to an additional pinch-to-zoom-ingesture.

In response to a selection from the user on one of daily conversationsummaries displayed on the eighth screen 1120, for example, in responseto a touch of the user with a finger on a region, on which one of thedaily conversation summaries is displayed, in a touchscreen environment,a screen for displaying messages may be provided. Here, at least aportion of messages corresponding to the selected daily conversationsummary may be displayed on a screen. If all of the messages associatedwith the selected daily conversation summary are not displayed on asingle screen, a position corresponding to at least one message (e.g., afirst message) among the messages associated with the selected dailyconversation summary may be selected.

Although each daily conversation summary is displayed with the same sizeof region on the eighth screen 1120, each daily conversation summary maybe displayed with a different size based on statistical information or anumber of messages associated with a corresponding conversation summary.According to some example embodiments, in response to a selection on aconversation summary, only messages associated with the selectedconversation summary may be displayed, or a message associated with theconversation summary among the entire messages may be distinguishablydisplayed. For example, in response to a selection on “dailyconversation summary 1” on the eighth screen 1120, a message associatedwith “daily conversation summary 1” may be displayed on a separatescreen or may be highlighted on the seventh screen 1110.

FIG. 12 illustrates another example of providing a conversation summaryin response to a pinch-to-zoom-in gesture on a chatroom screen accordingto at least one example embodiment. Referring to FIG. 12, a portion ofmessages included in a specific conversation thread are displayed on aninth screen 1210 of the computer apparatus 200. A user may controlmessages to be displayed on a screen through a user gesture (e.g., anupward/downward swipe). Here, FIG. 12 illustrates an example in whichthe computer apparatus 200 provides a user interface 1230 for providinga conversation summary for each item. For example, in response to aselection from the user on “first summary” through the user interface1230, for example, in response to a touch of the user with a finger on aregion on which “first summary” is displayed in a touchscreenenvironment, the ninth screen 1210 may be switched to a screen forproviding a conversation summary for each item corresponding to “firstsummary,” for example, a tenth screen 1220. Here, although FIG. 12illustrates fourth selection interfaces, such as, “original,” “firstsummary,” “second summary,” and “third summary,” it is provided as anexample only. A number of selection interfaces is not limited theretoand each corresponding item may be changed based on example embodiments.For example, in FIG. 12, a daily conversation summary corresponds to“first summary.” Accordingly, in response to the selection from the useron “first summary” through the user interface 1230, daily conversationsummaries are displayed on the tenth screen 1220. If a weeklyconversation summary and a monthly conversation summary are set withrespect to “second summary” and “third summary,” respectively, theweekly conversation summary for messages may be displayed in response toa selection on “second summary” and the monthly conversation summary formessages may be displayed in response to a selection on “third summary.”If a conversation summary for each contact corresponds to “secondsummary,” a conversation summary for each contact for messages may bedisplayed in response to a selection on “second summary.”

As described above, request methods and/or display methods for aconversation summary may be variously set depending on exampleembodiments.

According to some example embodiments, it is possible to provide aninterface of summarizing and thereby displaying conversations of aconversation thread corresponding to a specific chatroom orconversations of a conversation thread corresponding to a specific user.

The systems or apparatuses described above may be implemented usinghardware and/or a combination of hardware and software. For example, theapparatuses and the components described herein may be implemented usingone or more general-purpose or special purpose computers, such as, forexample, a processor, a controller, an arithmetic logic unit (ALU), adigital signal processor, a microcomputer, a field programmable gatearray (FPGA), a programmable logic unit (PLU), a microprocessor, or anyother device capable of responding to and executing instructions in adefined manner. The processing device may run an operating system (OS)and one or more software applications that run on the OS. The processingdevice also may access, store, manipulate, process, and create data inresponse to execution of the software. For simplicity, the descriptionof a processing device is used as singular; however, one skilled in theart will be appreciated that a processing device may include multipleprocessing elements and/or multiple types of processing elements. Forexample, a processing device may include multiple processors or aprocessor and a controller. In addition, different processingconfigurations are possible, such as parallel processors, distributedprocessors, a cloud computing configuration, etc. Moreover, eachprocessor of the at least one processor may be a multi-core processor,but the example embodiments are not limited thereto.

The software may include a computer program, a piece of code, aninstruction, or some combination thereof, for independently orcollectively instructing or configuring the processing device to operateas desired. Software and/or data may be embodied permanently ortemporarily in any type of machine, component, physical equipment,virtual equipment, computer storage medium or device, or in a propagatedsignal wave capable of providing instructions or data to or beinginterpreted by the processing device. The software also may bedistributed over network coupled computer systems so that the softwareis stored and executed in a distributed fashion. The software and datamay be stored by one or more computer readable storage mediums.

The methods according to the above-described example embodiments may berecorded in non-transitory computer-readable media including programinstructions to implement various operations of the above-describedexample embodiments. The media may also include, alone or in combinationwith the program instructions, data files, data structures, and thelike. The media may continuously store a program executable by acomputer or may temporarily store or the program for execution ordownload. Also, the media may be various types of recording devices orstorage devices in which a single piece or a plurality of pieces ofhardware may be distributed over a network without being limited to amedium directly connected to a computer system. Examples of the mediamay include magnetic media such as hard disks, floppy disks, andmagnetic tapes; optical media such as CD-ROM discs and DVDs;magneto-optical media such as floptical disks; and hardware devices thatare specially configured to store and perform program instructions, suchas read-only memory (ROM), random access memory (RAM), flash memory, andthe like. Examples of other media may include recording media andstorage media managed at Appstore that distributes applications or sitesand servers that supply and distribute various types of software.Examples of program instructions include both machine code, such asproduced by a compiler, and files containing higher level code that maybe executed by the computer using an interpreter.

While this disclosure includes some specific example embodiments, itwill be apparent to one of ordinary skill in the art that variousalterations and modifications in form and details may be made in thedisclosed example embodiments without departing from the spirit andscope of the claims and their equivalents. For example, suitable resultsmay be achieved if the described techniques are performed in a differentorder, and/or if components in a described system, architecture, device,or circuit are combined in a different manner, and/or replaced orsupplemented by other components or their equivalents.

What is claimed is:
 1. A conversation thread displaying method of acomputer apparatus comprising at least one processor, the methodcomprising: classifying, by the at least one processor, messagestransmitted and received through at least one conversation session togenerate a conversation thread for each of the at least one conversationsession; providing, by the at least one processor, a conversationsession list, the conversation session list including one or moreconversation threads associated with the at least one conversationsession; displaying, by the at least one processor, messages of aselected conversation thread selected from the conversation sessionlist; receiving, by the at least one processor, a first conversationsummary request for the messages of the selected conversation thread;providing, by the at least one processor, a first conversation summaryfor the messages of the selected conversation thread in response to thefirst conversation summary request for the messages of the selectedconversation thread; and receiving, by the at least one processor, aperiod change request for displaying the first conversation summary,wherein the providing a first conversation summary comprises providingat least one first conversation summary generated for each period byclassifying the messages of the selected conversation thread for eachperiod based on a time at which a corresponding message is transmittedor a time at which a corresponding message is received, and wherein theproviding a first conversation summary comprises changing a period fordisplaying the first conversation summary from a first period to asecond period in response to the period change request, and providingthe first conversation summary generated for the second period.
 2. Themethod of claim 1, wherein the providing a first conversation summarycomprises displaying the first conversation summary by switching a firstscreen on which a portion of the messages included in the selectedconversation thread are displayed to a second screen on which the firstconversation summary is displayed.
 3. The method of claim 1, furthercomprising: receiving, by the at least one processor, a secondconversation summary request for each conversation session included inthe conversation session list in a state in which the conversationsession list is displayed; and providing by the at least one processor,a second conversation summary for each conversation session included inthe conversation session list in response to the second conversationsummary request for the conversation session list.
 4. The method ofclaim 3, wherein the providing a second conversation summary for eachconversation session comprises providing a conversation summarygenerated using messages included in a conversation thread associatedwith a corresponding conversation session.
 5. The method of claim 4,wherein the providing a second conversation summary for eachconversation session comprises: classifying the messages included in theconversation thread associated with the corresponding conversationsession for each period; providing the second conversation summary for afirst period among conversation summaries generated for respectiveperiods using the classified messages; changing the second conversationsummary for the first period to the second conversation summary for asecond period; and providing the second conversation summary for thesecond period in response to a conversation summary change request forthe conversation session.
 6. The method of claim 3, wherein theproviding a second conversation summary for each conversation sessioncomprises displaying the second conversation summary for eachconversation session by switching a screen on which the conversationsession list is displayed to a screen on which the second conversationsummary for each conversation session is displayed.
 7. The method ofclaim 1, further comprising: providing, by the at least one processor, acontact list; receiving, by the at least one processor, a thirdconversation summary request for a contact in a state in which thecontact list is displayed; and providing, by the at least one processor,a third conversation summary of messages for each contact included inthe contact list in response to the third conversation summary requestfor the contact.
 8. The method of claim 7, wherein the providing a thirdconversation summary for each contact comprises providing the thirdconversation summary generated using one or more messages comprising atleast one of a message received from a contact or a message transmittedto the same contact, with respect to respective contacts.
 9. The methodof claim 8, wherein the providing a third conversation summary for eachcontact comprises: classifying the one or more messages for each periodand in association with the respective contacts; providing the thirdconversation summary for a first period from among conversationsummaries generated for respective periods using the classified one ormore messages; changing the third conversation summary for the firstperiod to the third conversation summary for a second period; andproviding the third conversation summary for the second period inresponse to a conversation summary change request for the contact. 10.The method of claim 7, wherein the providing a third conversationsummary for each contact comprises displaying the third conversationsummary for each contact by switching a screen on which the contact listis displayed to a screen on which the third conversation summary foreach contact is displayed.
 11. The method of claim 1, furthercomprising: classifying, by the at least one processor, the transmittedand received messages based on at least one item among the conversationthread, a period, a contact, a number of messages, or a subject;setting, by the at least one processor, a weight for each item to eachof the classified transmitted and received messages; and generating, bythe at least one processor, a fourth conversation summary of messagesclassified into a desired item based on the weight of the desired item.12. The method of claim 11, wherein the setting a weight for each itemcomprises setting the weight to each of messages classified into aspecific item based on a correlation between the messages classifiedinto the specific item and a number of the messages classified into thespecific item.
 13. The method of claim 1, wherein the first conversationsummary comprises information about at least one of a number of themessages used for the first conversation summary, a period during whichthe messages used for the first conversation summary are transmitted orreceived, and a contact having transmitted or received the messages usedfor the first conversation summary.
 14. A non-transitorycomputer-readable record medium storing instructions that, when executedby a processor, cause a computer apparatus to perform the method ofclaim
 1. 15. A computer apparatus comprising: at least one processorconfigured to execute a computer-readable instruction, wherein the atleast one processor is configured to, classify messages transmitted andreceived through at least one conversation session to generate aconversation thread for each of the at least one conversation session,provide a conversation session list, the conversation session listincluding one or more conversation threads associated with the at leastone conversation session, display messages of a selected conversationthread selected from the conversation session list, receive aconversation summary request for the messages of the selectedconversation thread, provide a conversation summary for the messages ofthe selected conversation thread in response to the conversation summaryrequest for the messages of the selected conversation thread, andreceive a period change request for displaying the conversation summary,wherein the at least one processor is further configured to provide atleast one conversation summary generated for each period by classifyingthe messages of the selected conversation thread for each period basedon a time at which a corresponding message is transmitted or a time atwhich a corresponding message is received, and wherein the at least oneprocessor is further configured to change a period for displaying theconversation summary from a first period to a second period in responseto the period change request, and providing the conversation summarygenerated for the second period.
 16. The computer apparatus of claim 15,wherein the at least one processor is further configured to, receive asecond conversation summary request for each conversation sessionincluded in the conversation session list in a state in which theconversation session list is displayed, and provide a secondconversation summary for each conversation session included in theconversation session list in response to the second conversation summaryrequest for the conversation session list.